/**
 * 仿JSON内置API parse方法
 * @param {String} javaData JSON数据格式
 * @returns Object
 */

// JSON.parse(数据) 
// 封装一个JSON数据格式转换为JS对象
function parse(javaData) {
    // 1定义一个空对象,2过滤字符串，去掉{}，"，和空格,3，按，分割为数组，4遍历数组
    let webObj = {}
    javaData = javaData.replace(/{|}|"|\s/g, '')
    let javaDataArr = javaData.split(',')
    javaDataArr.forEach(item => {
        // 5按冒号分割数组
        let temp = item.split(':')
            // 6数组中第一个值就是健，第二个值就是值
        let key = temp[0]
        let val = temp[1]
            // 7将数据放到对象中，只能用数组语法，因为健是变量
        webObj[key] = val
    })
    return webObj

}
// console.log(parse('{ "a": "1", "b": "2" }'))


/**
 * 仿JSON内置API stringify方法
 * @param {Object} webObj JS标准普通对象
 * @returns String
 */
// JSON.stringify(数据)
// 封装一个JS对象转换为JSON数据格式
function stringify(webObj) {
    //遍历对象，遍历里面将健：值拼接push到数组中，遍历结束将数组转为字符串
    let arr = []
    for (let key in webObj) {
        let temp = `"${key}":"${webObj[key]}"`
        arr.push(temp)
    }
    return `{${arr.join(',')}}`
}
// console.log(stringify({ a: 1, b: 2 }))